home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
cpp_libs
/
sos3-2.lha
/
src
/
agg
/
agg_sos.h
< prev
next >
Wrap
C/C++ Source or Header
|
1991-10-24
|
31KB
|
622 lines
#ifndef agg_SOSI
#define agg_SOSI 1
#include "agg_use.h"
#include "knl_sos.h"
class _sos_Aggregate;
class _sos_Object_Collection;
class _sos_Object_sos_Object_Association;
class _sos_Cursor;
class _sos_Object_List;
class _sos_Object_Array;
class _sos_Object_sos_Object_Mapping;
class _sos_Object_Bag;
class _sos_Object_Set;
class _sos_Node;
class _sos_Array_node;
class _sos_List_node;
class _sos_Map_node;
class _sos_Bag_node;
class _sos_Aggregate:virtual public _sos_Object
{ friend class sos_Aggregate;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
public:
static _sos_Aggregate* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&);
void _copy(sos_Typed_id&,sos_Aggregate);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Aggregate,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Aggregate,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Aggregate);
virtual sos_Bool is_empty(sos_Typed_id&);
virtual void clear(sos_Typed_id&);
virtual sos_Int card(sos_Typed_id&);
virtual sos_Cursor open_cursor(sos_Typed_id&,sos_Container _p1 = TEMP_CONTAINER);
virtual void close_cursor(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Cursor duplicate(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool is_valid(sos_Typed_id&,sos_Cursor _p1);
virtual void remove_at(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_first(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_last(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
protected:
};
extern _sos_Aggregate *__sos_Aggregate_obj;
class _sos_Object_Collection:virtual public _sos_Aggregate
{ friend class sos_Object_Collection;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_Collection () { return 8; }
public:
static _sos_Object_Collection* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Bool based_on_equal = FALSE);
protected:
static void _create_comps(sos_Object_Collection,sos_Bool based_on_equal = FALSE);
public:
void _copy(sos_Typed_id&,sos_Object_Collection);
protected:
static void _copy_comps(sos_Object_Collection,sos_Object_Collection);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Object_Collection,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Object_Collection,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Object_Collection);
virtual sos_Bool is_element(sos_Typed_id&,sos_Object _p1);
virtual sos_Object get(sos_Typed_id&,sos_Cursor _p1);
protected:
virtual sos_Bool get_based_on_equal(sos_Typed_id&);
virtual void set_based_on_equal(sos_Typed_id&,sos_Bool);
public:
protected:
};
extern _sos_Object_Collection *__sos_Object_Collection_obj;
class _sos_Object_sos_Object_Association:virtual public _sos_Aggregate
{ friend class sos_Object_sos_Object_Association;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_sos_Object_Association () { return 8; }
public:
static _sos_Object_sos_Object_Association* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Bool role1_based_on_equal = FALSE,sos_Bool role2_based_on_equal = FALSE);
protected:
static void _create_comps(sos_Object_sos_Object_Association,sos_Bool role1_based_on_equal = FALSE,sos_Bool role2_based_on_equal = FALSE);
public:
void _copy(sos_Typed_id&,sos_Object_sos_Object_Association);
protected:
static void _copy_comps(sos_Object_sos_Object_Association,sos_Object_sos_Object_Association);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Object_sos_Object_Association,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Object_sos_Object_Association,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Object_sos_Object_Association);
virtual sos_Bool is_role1(sos_Typed_id&,sos_Object _p1);
virtual sos_Bool is_role2(sos_Typed_id&,sos_Object _p1);
virtual sos_Object get_role1(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Object get_role2(sos_Typed_id&,sos_Cursor _p1);
protected:
virtual sos_Bool get_role1_based_on_equal(sos_Typed_id&);
virtual void set_role1_based_on_equal(sos_Typed_id&,sos_Bool);
virtual sos_Bool get_role2_based_on_equal(sos_Typed_id&);
virtual void set_role2_based_on_equal(sos_Typed_id&,sos_Bool);
public:
protected:
};
extern _sos_Object_sos_Object_Association *__sos_Object_sos_Object_Association_obj;
class _sos_Cursor:virtual public _sos_Object
{ friend class sos_Cursor;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Cursor () { return 8; }
public:
static _sos_Cursor* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Aggregate domain);
protected:
static void _create_comps(sos_Cursor,sos_Aggregate domain);
public:
void _copy(sos_Typed_id&,sos_Cursor);
protected:
static void _copy_comps(sos_Cursor,sos_Cursor);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Cursor,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Cursor,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Cursor);
virtual sos_Bool defined_for(sos_Typed_id&,sos_Aggregate _p1);
virtual sos_Node get_current(sos_Typed_id&);
virtual void set_current(sos_Typed_id&,sos_Node);
private:
virtual sos_Aggregate get_domain(sos_Typed_id&);
virtual void set_domain(sos_Typed_id&,sos_Aggregate);
public:
protected:
static void local_initialize(sos_Cursor _p1);
};
extern _sos_Cursor *__sos_Cursor_obj;
class _sos_Object_List:virtual public _sos_Object_Collection
{ friend class sos_Object_List;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_Collection () { return 8; }
virtual sos_Offset _offset_sos_Object_List () { return 9; }
public:
static _sos_Object_List* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Bool based_on_equal = FALSE);
void _copy(sos_Typed_id&,sos_Object_List);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
virtual sos_Int hash_value(sos_Typed_id&);
virtual void append(sos_Typed_id&,sos_Object _p1);
virtual void insert(sos_Typed_id&,Index _p1,sos_Object _p2);
virtual void remove(sos_Typed_id&,Index _p1);
virtual sos_Object get_nth(sos_Typed_id&,Index _p1);
virtual void set_nth(sos_Typed_id&,Index _p1,sos_Object _p2);
virtual void __plus_assign(sos_Typed_id&,sos_Object_List _p1);
virtual Index current_pos(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool move_cursor(sos_Typed_id&,sos_Cursor _p1,Index _p2);
virtual void insert_before(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2);
virtual void insert_after(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2);
virtual void set(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2);
virtual sos_Object get(sos_Typed_id&,sos_Cursor _p1);
virtual void remove_at(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Int card(sos_Typed_id&);
virtual sos_Cursor open_cursor(sos_Typed_id&,sos_Container _p1 = TEMP_CONTAINER);
virtual void close_cursor(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Cursor duplicate(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool is_valid(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_first(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_last(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
private:
virtual sos_List_node get_first(sos_Typed_id&);
virtual void set_first(sos_Typed_id&,sos_List_node);
virtual sos_List_node get_last(sos_Typed_id&);
virtual void set_last(sos_Typed_id&,sos_List_node);
virtual sos_Int get_cardinality(sos_Typed_id&);
virtual void set_cardinality(sos_Typed_id&,sos_Int);
public:
protected:
static void local_initialize(sos_Object_List _p1);
static void local_finalize(sos_Object_List _p1);
static void local_assign(sos_Object_List _p1,sos_Object _p2);
static sos_Bool local_equal(sos_Object_List _p1,sos_Object _p2,sos_Eq_kind _p3);
static sos_Int local_hash_value(sos_Object_List _p1);
};
extern _sos_Object_List *__sos_Object_List_obj;
class _sos_Object_Array:virtual public _sos_Object_Collection
{ friend class sos_Object_Array;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_Collection () { return 8; }
virtual sos_Offset _offset_sos_Object_Array () { return 9; }
public:
static _sos_Object_Array* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,Index bottom,Index top,sos_Bool based_on_equal = FALSE);
protected:
static void _create_comps(sos_Object_Array,Index bottom,Index top,sos_Bool based_on_equal = FALSE);
public:
void _copy(sos_Typed_id&,sos_Object_Array);
protected:
static void _copy_comps(sos_Object_Array,sos_Object_Array);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
virtual sos_Int hash_value(sos_Typed_id&);
virtual Index get_bottom(sos_Typed_id&);
virtual Index get_top(sos_Typed_id&);
virtual sos_Object get_nth(sos_Typed_id&,Index _p1);
virtual void set_nth(sos_Typed_id&,Index _p1,sos_Object _p2);
virtual void shift(sos_Typed_id&,Index start,sos_Int number);
virtual void rotate(sos_Typed_id&,sos_Int number);
virtual sos_Object __index(sos_Typed_id&,Index _p1);
virtual Index current_pos(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool move_cursor(sos_Typed_id&,sos_Cursor _p1,Index _p2);
virtual void set(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2);
virtual sos_Int size(sos_Typed_id&);
virtual sos_Object get(sos_Typed_id&,sos_Cursor _p1);
virtual void remove_at(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Int card(sos_Typed_id&);
virtual sos_Cursor open_cursor(sos_Typed_id&,sos_Container _p1 = TEMP_CONTAINER);
virtual void close_cursor(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Cursor duplicate(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool is_valid(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_first(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_last(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
private:
virtual sos_Int element_size(sos_Typed_id&);
virtual Index get_bottom_index(sos_Typed_id&);
virtual void set_bottom_index(sos_Typed_id&,Index);
virtual Index get_top_index(sos_Typed_id&);
virtual void set_top_index(sos_Typed_id&,Index);
virtual sos_Offset get_address(sos_Typed_id&);
virtual void set_address(sos_Typed_id&,sos_Offset);
public:
protected:
static void local_initialize(sos_Object_Array _p1);
static void local_finalize(sos_Object_Array _p1);
static void local_assign(sos_Object_Array _p1,sos_Object _p2);
static sos_Bool local_equal(sos_Object_Array _p1,sos_Object _p2,sos_Eq_kind _p3);
static sos_Int local_hash_value(sos_Object_Array _p1);
};
extern _sos_Object_Array *__sos_Object_Array_obj;
class _sos_Object_sos_Object_Mapping:virtual public _sos_Object_sos_Object_Association
{ friend class sos_Object_sos_Object_Mapping;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_sos_Object_Association () { return 8; }
virtual sos_Offset _offset_sos_Object_sos_Object_Mapping () { return 10; }
public:
static _sos_Object_sos_Object_Mapping* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Bool list_cursor = FALSE,sos_Bool key_based_on_equal = FALSE,sos_Bool info_based_on_equal = FALSE);
protected:
static void _create_comps(sos_Object_sos_Object_Mapping,sos_Bool list_cursor = FALSE,sos_Bool key_based_on_equal = FALSE,sos_Bool info_based_on_equal = FALSE);
public:
void _copy(sos_Typed_id&,sos_Object_sos_Object_Mapping);
protected:
static void _copy_comps(sos_Object_sos_Object_Mapping,sos_Object_sos_Object_Mapping);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
virtual sos_Int hash_value(sos_Typed_id&);
virtual sos_Bool is_key(sos_Typed_id&,sos_Object _p1);
virtual sos_Bool is_info(sos_Typed_id&,sos_Object _p1);
virtual void insert(sos_Typed_id&,sos_Object _p1,sos_Object _p2);
virtual void remove(sos_Typed_id&,sos_Object _p1);
virtual sos_Object __index(sos_Typed_id&,sos_Object _p1);
virtual sos_Object get_key(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Object get_info(sos_Typed_id&,sos_Cursor _p1);
virtual void set_info(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2);
virtual void move_cursor(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2);
virtual void insert_before(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2,sos_Object _p3);
virtual void insert_after(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2,sos_Object _p3);
virtual sos_Int size(sos_Typed_id&);
virtual sos_Bool is_role1(sos_Typed_id&,sos_Object _p1);
virtual sos_Bool is_role2(sos_Typed_id&,sos_Object _p1);
virtual sos_Object get_role1(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Object get_role2(sos_Typed_id&,sos_Cursor _p1);
virtual void clear(sos_Typed_id&);
virtual void remove_at(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Int card(sos_Typed_id&);
virtual sos_Cursor open_cursor(sos_Typed_id&,sos_Container _p1 = TEMP_CONTAINER);
virtual void close_cursor(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Cursor duplicate(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool is_valid(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_first(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_last(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
private:
virtual void init_table(sos_Typed_id&);
virtual void increase_hash_table(sos_Typed_id&);
virtual void decrease_hash_table(sos_Typed_id&);
virtual void insert_in_list(sos_Typed_id&,sos_Object _p1,sos_Object _p2,sos_Object _p3,sos_Object _p4);
virtual void insert_in_page_list(sos_Typed_id&,sos_Container _p1,sos_Bool _p2,sos_Bool _p3,sos_Offset _p4,sos_Int _p5,sos_Object _p6,sos_Object _p7,sos_Object _p8,sos_Object _p9);
virtual sos_Object remove_from_page_list(sos_Typed_id&,sos_Container _p1,sos_Bool _p2,sos_Bool _p3,sos_Offset _p4,sos_Int _p5,sos_Object _p6);
virtual sos_Bool assemble_page(sos_Typed_id&,sos_Offset _p1,sos_Char _p2,sos_Int _p3);
virtual void split_page(sos_Typed_id&,sos_Container _p1,sos_Bool _p2,sos_Offset _p3,sos_Char _p4,sos_Int _p5,sos_Int _p6);
virtual sos_Object search_succ_pred(sos_Typed_id&,sos_Object _p1,sos_Int _p2);
virtual void write_succ_pred(sos_Typed_id&,sos_Container _p1,sos_Bool _p2,sos_Bool _p3,sos_Object _p4,sos_Bool _p5,sos_Object _p6);
virtual sos_Int get_cardinality(sos_Typed_id&);
virtual void set_cardinality(sos_Typed_id&,sos_Int);
virtual sos_Object get_first_object(sos_Typed_id&);
virtual void set_first_object(sos_Typed_id&,sos_Object);
virtual sos_Object get_last_object(sos_Typed_id&);
virtual void set_last_object(sos_Typed_id&,sos_Object);
virtual sos_Bool get_list_cursor(sos_Typed_id&);
virtual void set_list_cursor(sos_Typed_id&,sos_Bool);
virtual sos_Offset get_no_of_pages_offset(sos_Typed_id&);
virtual void set_no_of_pages_offset(sos_Typed_id&,sos_Offset);
virtual sos_Int get_no_of_pages(sos_Typed_id&);
virtual void set_no_of_pages(sos_Typed_id&,sos_Int);
virtual sos_Int get_no_of_page_lists(sos_Typed_id&);
virtual void set_no_of_page_lists(sos_Typed_id&,sos_Int);
virtual sos_Int get_global_depth(sos_Typed_id&);
virtual void set_global_depth(sos_Typed_id&,sos_Int);
virtual sos_Int get_ht_entries(sos_Typed_id&);
virtual void set_ht_entries(sos_Typed_id&,sos_Int);
virtual sos_Int get_ht_offset(sos_Typed_id&);
virtual void set_ht_offset(sos_Typed_id&,sos_Int);
public:
protected:
static void local_initialize(sos_Object_sos_Object_Mapping _p1);
static void local_finalize(sos_Object_sos_Object_Mapping _p1);
static void local_assign(sos_Object_sos_Object_Mapping _p1,sos_Object _p2);
static sos_Bool local_equal(sos_Object_sos_Object_Mapping _p1,sos_Object _p2,sos_Eq_kind _p3);
static sos_Int local_hash_value(sos_Object_sos_Object_Mapping _p1);
};
extern _sos_Object_sos_Object_Mapping *__sos_Object_sos_Object_Mapping_obj;
class _sos_Object_Bag:virtual public _sos_Object_Collection
{ friend class sos_Object_Bag;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_Collection () { return 8; }
virtual sos_Offset _offset_sos_Object_Bag () { return 9; }
public:
static _sos_Object_Bag* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Bool list_cursor = TRUE,sos_Bool based_on_equal = FALSE);
protected:
static void _create_comps(sos_Object_Bag,sos_Bool list_cursor = TRUE,sos_Bool based_on_equal = FALSE);
public:
void _copy(sos_Typed_id&,sos_Object_Bag);
protected:
static void _copy_comps(sos_Object_Bag,sos_Object_Bag);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
virtual sos_Int hash_value(sos_Typed_id&);
virtual sos_Int insert(sos_Typed_id&,sos_Object _p1);
virtual sos_Int remove(sos_Typed_id&,sos_Object _p1);
virtual void eliminate(sos_Typed_id&,sos_Object _p1);
virtual sos_Int occurrences(sos_Typed_id&,sos_Object _p1);
virtual void __plus_assign(sos_Typed_id&,sos_Object_Bag _p1);
virtual void __minus_assign(sos_Typed_id&,sos_Object_Bag _p1);
virtual void __times_assign(sos_Typed_id&,sos_Object_Bag _p1);
virtual sos_Bool __less(sos_Typed_id&,sos_Object_Bag _p1);
virtual sos_Bool __less_equal(sos_Typed_id&,sos_Object_Bag _p1);
virtual sos_Bool __greater(sos_Typed_id&,sos_Object_Bag _p1);
virtual sos_Bool __greater_equal(sos_Typed_id&,sos_Object_Bag _p1);
virtual void max_union(sos_Typed_id&,sos_Object_Bag _p1);
virtual sos_Int entity_occurs(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_diff_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_diff_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool is_element(sos_Typed_id&,sos_Object _p1);
virtual sos_Object get(sos_Typed_id&,sos_Cursor _p1);
virtual void clear(sos_Typed_id&);
virtual void remove_at(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Int card(sos_Typed_id&);
virtual sos_Cursor open_cursor(sos_Typed_id&,sos_Container _p1 = TEMP_CONTAINER);
virtual void close_cursor(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Cursor duplicate(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool is_valid(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_first(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_last(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
private:
virtual void search_succ_pred(sos_Typed_id&,sos_Bag_node _p1,Index _p2,sos_Object& _p3,sos_Int& _p4,sos_Int& _p5);
virtual void write_current(sos_Typed_id&,sos_Cursor _p1,sos_Object _p2,sos_Int _p3,sos_Int _p4);
virtual sos_Int get_no_of_elements(sos_Typed_id&,sos_Object_sos_Int_Mapping _p1,sos_Object _p2);
virtual sos_Int set_no_of_elements(sos_Typed_id&,sos_Object_sos_Int_Mapping _p1,sos_Object _p2,sos_Int _p3,sos_Int _p4);
virtual sos_Int get_cardinality(sos_Typed_id&);
virtual void set_cardinality(sos_Typed_id&,sos_Int);
virtual sos_Object_sos_Int_Mapping get_m(sos_Typed_id&);
virtual void set_m(sos_Typed_id&,sos_Object_sos_Int_Mapping);
virtual sos_Bool get_list_cursor(sos_Typed_id&);
virtual void set_list_cursor(sos_Typed_id&,sos_Bool);
public:
protected:
static void local_initialize(sos_Object_Bag _p1);
static void local_finalize(sos_Object_Bag _p1);
static void local_assign(sos_Object_Bag _p1,sos_Object _p2);
static sos_Bool local_equal(sos_Object_Bag _p1,sos_Object _p2,sos_Eq_kind _p3);
static sos_Int local_hash_value(sos_Object_Bag _p1);
};
extern _sos_Object_Bag *__sos_Object_Bag_obj;
class _sos_Object_Set:virtual public _sos_Object_Collection
{ friend class sos_Object_Set;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Aggregate () { return 8; }
virtual sos_Offset _offset_sos_Object_Collection () { return 8; }
virtual sos_Offset _offset_sos_Object_Set () { return 9; }
public:
static _sos_Object_Set* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&,sos_Bool list_cursor = TRUE,sos_Bool based_on_equal = FALSE);
protected:
static void _create_comps(sos_Object_Set,sos_Bool list_cursor = TRUE,sos_Bool based_on_equal = FALSE);
public:
void _copy(sos_Typed_id&,sos_Object_Set);
protected:
static void _copy_comps(sos_Object_Set,sos_Object_Set);
public:
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
virtual sos_Int hash_value(sos_Typed_id&);
virtual void insert(sos_Typed_id&,sos_Object _p1);
virtual void remove(sos_Typed_id&,sos_Object _p1);
virtual void __plus_assign(sos_Typed_id&,sos_Object_Set _p1);
virtual void __minus_assign(sos_Typed_id&,sos_Object_Set _p1);
virtual void __times_assign(sos_Typed_id&,sos_Object_Set _p1);
virtual sos_Bool __less(sos_Typed_id&,sos_Object_Set _p1);
virtual sos_Bool __less_equal(sos_Typed_id&,sos_Object_Set _p1);
virtual sos_Bool __greater(sos_Typed_id&,sos_Object_Set _p1);
virtual sos_Bool __greater_equal(sos_Typed_id&,sos_Object_Set _p1);
virtual sos_Bool is_element(sos_Typed_id&,sos_Object _p1);
virtual sos_Object get(sos_Typed_id&,sos_Cursor _p1);
virtual void clear(sos_Typed_id&);
virtual void remove_at(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Int card(sos_Typed_id&);
virtual sos_Cursor open_cursor(sos_Typed_id&,sos_Container _p1 = TEMP_CONTAINER);
virtual void close_cursor(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Cursor duplicate(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool is_valid(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_first(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_last(sos_Typed_id&,sos_Cursor _p1);
virtual sos_Bool to_succ(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
virtual sos_Bool to_pred(sos_Typed_id&,sos_Cursor _p1,sos_Int _p2 = 1);
private:
virtual sos_Bool get_list_cursor(sos_Typed_id&);
virtual void set_list_cursor(sos_Typed_id&,sos_Bool);
virtual sos_Object_sos_Bool_Mapping get_m(sos_Typed_id&);
virtual void set_m(sos_Typed_id&,sos_Object_sos_Bool_Mapping);
public:
protected:
static void local_initialize(sos_Object_Set _p1);
static void local_finalize(sos_Object_Set _p1);
static void local_assign(sos_Object_Set _p1,sos_Object _p2);
static sos_Bool local_equal(sos_Object_Set _p1,sos_Object _p2,sos_Eq_kind _p3);
static sos_Int local_hash_value(sos_Object_Set _p1);
};
extern _sos_Object_Set *__sos_Object_Set_obj;
class _sos_Node:virtual public _sos_Object
{ friend class sos_Node;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Node () { return 8; }
public:
static _sos_Node* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&);
void _copy(sos_Typed_id&,sos_Node);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Node,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Node,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Node);
protected:
};
extern _sos_Node *__sos_Node_obj;
class _sos_Array_node:virtual public _sos_Node
{ friend class sos_Array_node;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Node () { return 8; }
virtual sos_Offset _offset_sos_Array_node () { return 8; }
public:
static _sos_Array_node* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&);
void _copy(sos_Typed_id&,sos_Array_node);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Array_node,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Array_node,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Array_node);
private:
virtual Index get_index(sos_Typed_id&);
virtual void set_index(sos_Typed_id&,Index);
public:
protected:
};
extern _sos_Array_node *__sos_Array_node_obj;
class _sos_List_node:virtual public _sos_Node
{ friend class sos_List_node;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Node () { return 8; }
virtual sos_Offset _offset_sos_List_node () { return 8; }
public:
static _sos_List_node* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&);
void _copy(sos_Typed_id&,sos_List_node);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_List_node,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_List_node,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_List_node);
private:
virtual void insert_before(sos_Typed_id&,sos_List_node _p1);
virtual void insert_after(sos_Typed_id&,sos_List_node _p1);
virtual void remove(sos_Typed_id&);
virtual sos_List_node succ(sos_Typed_id&,sos_Int steps = 1);
virtual sos_List_node pred(sos_Typed_id&,sos_Int steps = 1);
virtual sos_List_node get_succ(sos_Typed_id&);
virtual void set_succ(sos_Typed_id&,sos_List_node);
virtual sos_List_node get_pred(sos_Typed_id&);
virtual void set_pred(sos_Typed_id&,sos_List_node);
virtual sos_Object get_val(sos_Typed_id&);
virtual void set_val(sos_Typed_id&,sos_Object);
public:
protected:
};
extern _sos_List_node *__sos_List_node_obj;
class _sos_Map_node:virtual public _sos_Node
{ friend class sos_Map_node;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Node () { return 8; }
virtual sos_Offset _offset_sos_Map_node () { return 8; }
public:
static _sos_Map_node* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&);
void _copy(sos_Typed_id&,sos_Map_node);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Map_node,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Map_node,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Map_node);
protected:
virtual sos_Object get_key_val(sos_Typed_id&);
virtual void set_key_val(sos_Typed_id&,sos_Object);
public:
protected:
};
extern _sos_Map_node *__sos_Map_node_obj;
class _sos_Bag_node:virtual public _sos_Map_node
{ friend class sos_Bag_node;
virtual sos_Offset _offset_sos_Object () { return 0; }
virtual sos_Offset _offset_sos_Node () { return 8; }
virtual sos_Offset _offset_sos_Map_node () { return 8; }
virtual sos_Offset _offset_sos_Bag_node () { return 24; }
public:
static _sos_Bag_node* _make(sos_Typed_id&);
virtual sos_Offset _size();
void _create(sos_Typed_id&);
void _copy(sos_Typed_id&,sos_Bag_node);
virtual sos_Object _clone(sos_Typed_id&,sos_Container);
virtual void destroy(sos_Typed_id&);
virtual void assign(sos_Typed_id&,sos_Object);
static void local_assign(sos_Bag_node,sos_Object);
virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
static sos_Bool local_equal(sos_Bag_node,sos_Object,sos_Eq_kind);
virtual sos_Int hash_value(sos_Typed_id&);
static sos_Int local_hash_value(sos_Bag_node);
private:
virtual sos_Int get_tag_no(sos_Typed_id&);
virtual void set_tag_no(sos_Typed_id&,sos_Int);
virtual sos_Int get_tag_max(sos_Typed_id&);
virtual void set_tag_max(sos_Typed_id&,sos_Int);
public:
protected:
};
extern _sos_Bag_node *__sos_Bag_node_obj;
extern void _agg_init_sos();
#endif